<?php
/**
 * 描述
 * Created by Paco
 * Date: 2018/8/22 Time: 11:13
 */

namespace App\Lib\SMS\Aliyun;


class SendSms
{

    /**
     * 发送短信
     */
    function sendSms($tel, $tpl_code, $data)
    {

        $params = array();

        // *** 需用户填写部分 ***

        $accessKeyId = "your access key id";
        $accessKeySecret = "your access key secret";

        $params["PhoneNumbers"] = $tel;

        $params["SignName"] = "短信签名";

        $params["TemplateCode"] = $tpl_code;

        $params['TemplateParam'] = $data;

        // 可选: 设置发送短信流水号
        //$params['OutId'] = "12345";

        //  可选: 上行短信扩展码, 扩展码字段控制在7位或以下，无特殊需求用户请忽略此字段
        //$params['SmsUpExtendCode'] = "1234567";


        // *** 需用户填写部分结束, 以下代码若无必要无需更改 ***
        if (!empty($params["TemplateParam"]) && is_array($params["TemplateParam"])) {
            $params["TemplateParam"] = json_encode($params["TemplateParam"], JSON_UNESCAPED_UNICODE);
        }

        // 初始化SignatureHelper实例用于设置参数，签名以及发送请求
        $helper = new SignatureHelper();

        // 此处可能会抛出异常，注意catch
        $content = $helper->request(
            $accessKeyId,
            $accessKeySecret,
            "dysmsapi.aliyuncs.com",
            array_merge($params, array(
                "RegionId" => "cn-hangzhou",
                "Action" => "SendSms",
                "Version" => "2017-05-25",
            ))
            // 选填: 启用https
            , true
        );

        return $content;
    }


    public function loginCode($tel, $data)
    {
        $tpl_code = '';
        return $this->sendSms($tel, $tpl_code, $data);
    }

    public function registerCode($tel, $data)
    {
        $tpl_code = '';
        return $this->sendSms($tel, $tpl_code, $data);
    }


}